const path = require('path');
const dotenv = require('dotenv');

try {
  dotenv.config({ path: path.join(__dirname, '/../../.env')});
} catch (e){
  console.log('not load env from program, you should refer .env from docker env file, maybe')
};

const conf = {
  debug: false,
  env: process.env.LOG_LEVEL || 'development',
  logLevel: process.env.LOG_LEVEL || 'dev', // log level
  cors: {
    origin: [
      'http://localhost:3000',
      'http://localhost:8900'
    ], // 指定接收的地址
    methods:['GET','POST','PUT','DELETE'],  //指定接收的请求类型
  },
  cookie: {
    path: "/", // 指定 cookie 影响到的路径
    // expires: // 指定时间格式
    secure: (this.env === 'production'), //当 secure 值为 true 时，在 HTTPS 中才有效；反之，cookie 在 HTTP 中是有效
    httpOnly: true, // 浏览器不允许脚本操作 document.cookie 去更改 cookie。设置为true可以避免被 xss 攻击拿到 cookie
    maxAge: 1800000 // 30分钟过期时间
  },
  session: {
    name: 'sessionId', // 保存在本地cookie的一个名字 默认connect.sid  可以不设置
    secret: 'uwotxs', // 可以随便写。 一个 String 类型的字符串，作为服务器端生成 session 的签名
    resave: false, // 强制保存session,即使它没有变化,默认false
    saveUninitialized: true, // 强制将未初始化的 session 存储。  默认值是true  建议设置成true
    rolling: true, //在每次请求时强行设置 cookie，这将重置 cookie 过期时间（默认：false）
  }
};

conf.mysql = require(path.join(__dirname,'/mysql'));
// conf.mongo = require(path.join(__dirname,'/mongo'));
conf.redis = require(path.join(__dirname,'/redis'));

module.exports = conf;